#存储作业与评分相关系统配置,例如评分标准细则、作业提交格式要求

# 添加数据持久化配置
DATA_STORAGE_PATH = "./data/"  # 与Course_Management_and_Enrollment/config.py保持一致
GRADE_DATA_FILE = "grades.json"  # 成绩数据文件名

# Assignment submission format requirements by type
# 按类型的作业提交格式要求
ASSIGNMENT_FORMAT_REQUIREMENTS = {
    "essay": "pdf",
    "programming": "py",
    "report": "docx",
    "presentation": "pptx"
}

# Scoring criteria weights for different task types
# 不同任务类型的评分标准权重

GRADING_CRITERIA = {
    "Assignment": {
        "content_accuracy": 0.5,
        "completeness": 0.3,
        "formatting": 0.2
    },
    "Quiz": {
        "answer_correctness": 0.9,
        "submission_timeliness": 0.1
    }
}

# Default weight distribution for course tasks
# 课程任务的默认权重分配
DEFAULT_TASK_WEIGHTS = {
    "assignment_1": 0.2,
    "assignment_2": 0.2,
    "quiz_1": 0.15,
    "quiz_2": 0.15,
    "final_assignment": 0.3
}

# Late submission penalty configuration
# 迟交罚款配置
LATE_PENALTY_RULES = {
    "penalty_rate": 0.1,  # 10% per day
    "maximum_penalty": 0.5,  # Maximum 50% deduction 最大扣除50%
    "grace_period_hours": 2  # No penalty within 2 hours of deadline 迟到两个小时不扣
}